1
Bài học 7: Giới thiệu về Mô-đun Python
EvoClass-AI001Bài giảng 7
00:00

Giới thiệu về Mô-đun Python

Trong Python, một Mô-đun là một tập tin kết thúc bằng .pyđóng vai trò là nơi chứa các thành phần mã nguồn có thể tái sử dụng (hàm, lớp, biến). Các mô-đun là nền tảng của kiến trúc chương trình quy mô lớn, giúp nhà phát triển quản lý độ phức tạp và cải thiện việc bảo trì mã nguồn bằng cách phân tách các định nghĩa một cách logic. Quá trình này tương tự như cách các khái niệm toán học được chia thành các lĩnh vực chuyên biệt (ví dụ: $f(x)$ được xác định trong một miền cụ thể $D$).

1. Mục đích của Mô-đun

Các mô-đun giải quyết ba nhu cầu quan trọng trong quá trình phát triển:

  • Khuyến khích Tái sử dụng mã nguồntrong nhiều dự án khác nhau mà không cần viết lại định nghĩa.
  • Đảm bảo tính rõ ràng và tổ chức bằng cách chia nhỏ các chương trình lớn thành các tập tin có liên quan, dễ quản lý.
  • Ngăn chặn xung đột tên gọibằng cách định nghĩa các không gian tên riêng biệt cho hàm và biến.

Ví dụ minh họa:

Hãy tưởng tượng bạn có một tập tin tên là utility.pychứa các hàm để tính toán kết quả toán học. Tập tin này chính là mô-đun, và những hàm đó là nội dung có thể truy cập được của nó.

2. Các phương pháp nhập vào

Câu lệnh Python importcâu lệnh sẽ làm cho các định nghĩa bên ngoài trở nên khả dụng với tập tin hiện tại của bạn. Phương pháp được chọn sẽ xác định cách bạn truy cập các thành phần và ảnh hưởng đến không gian tên của chương trình hiện tại.

  • Nhập vào chuẩn:import module_name. Yêu cầu truy cập nội dung bằng cách sử dụng module_name.function().
  • Nhập vào chọn lọc:from module import function. Cho phép sử dụng trực tiếp function()mà không cần tiền tố mô-đun.
  • Nhập vào với biệt danh:import module as alias. Cung cấp một biệt danh ngắn gọn, phù hợp với dự án để tiện lợi hơn (ví dụ: import numpy as np).
Tập trung vào Thư viện Chuẩn
Python bao gồm một thư viện chuẩ Thư viện Chuẩncủa các mô-đun tích hợp sẵn (như 'os', 'sys', 'random', 'math'). Việc học cách tận dụng các mô-đun tái sử dụng này là điều thiết yếu để phát triển hiệu quả và tiết kiệm thời gian đáng kể.
Câu hỏi 1
Nếu bạn dùng import math, bạn phải gọi hàm sqrtđể tính $\sqrt{25}$?
sqrt(25)
math.sqrt(25)
math::sqrt(25)
dùng math sqrt
Câu hỏi 2
Điều gì trong số các lợi ích của việc dùng mô-đun giải quyết vấn đề có nhiều hàm cùng tên là process_datatrong một ứng dụng lớn?
Tốc độ thực thi mã nguồn
Ngăn chặn xung đột tên gọi
Gỡ lỗi tự động
Câu hỏi 3
Điều gì xảy ra với một tập tin mô-đun khi bạn cố gắng thực hiện lần thứ hai việc import trong cùng một chương trình đang chạy?
Nó được nhập lại, thực thi toàn bộ mã ở cấp độ cao nhất.
Việc nhập thất bại với lỗi.
Python nhận ra rằng nó đã được tải rồi và bỏ qua việc thực thi.
Chỉ các biến được tải lại.